Whatsnew. Что нового. 4.0 (29 Декабря 2004) + Мелкие исправления + cwsdpmi.exe больше не нужен + Добавлен контроллер ITE8212 + Процедура CX теперь измеряет среднее время задержки при операции поиск+чтение одного сектора + erase: увеличение скорости работы через BIOS до 50мб/сек и выше на контроллерах, BIOS которых поддерживает DMA + erase: отображение скорости стирания + Добавлена поддержка IDE контроллеров SiS + SMART: RAW-значения теперь отображаются корректно + Поправлено определение контроллеров Promise 3.9 (9 Декабря 2004) + Исправлена ошибка Range Check при выборе накопителя + Исправлено некорректное определение некоторых SATA-контроллеров Via и SiI + Исправлено определение контроллеров Intel ICH5, работающих в Native mode + Исправлена ошибка в процедурах FF/TOF, приводящая к записи данных "мимо" нужного LBA. Ошибка проявлялась только на винчестерах, поддерживающих режим LBA48 + Исправлена ошибка, из-за которой иногда самопроизвольно паролились накопители + Процедура CX теперь выполняет SEEK+READ + Процедура AAM теперь также выполняет SEEK+READ + Исправлена ошибка в протоколировании результатов скана + Переработана система отсчёта времени + Изменены тайминги в процедуре скана для лучшей совместимости с последними накопителями + Программе теперь нужен процессор не ниже Pentium + Значительно увеличена скорость чтения/записи в процедурах ERASE, FF, TOF, READ. Прирост скорости составляет 3-7 раз + Добавлена поддержка BIOS. Стирание накопителей производится через BIOS, если накопитель был корректно определён в BIOS. Чтобы отключить поддержку функций BIOS, запускайте программу с ключом /DISABLEBIOS + Поправлены процедуры PWD, UNLOCK, DISPWD, добавлено несколько проверок + Передача данных теперь осуществляется в режиме Fast PIO везде, где это возможно и имеет смысл. 3.8 (26 Ноября 2004) + Исправлена процедура RPM + Процедура клавиатурного ввода переписана + Процедура управления меню переписана и оптимизирована + Переработана система справки * Добавлена контекстная помощь в строке статуса * По нажатию TAB автоматически вводится команда, стоящая первой в списке доступных команд в строке статуса (автодополнение) * F1 (Help) полностью переработана. Создана единая база команд + Процедура BSOD обновлена :-) + Добавлена поддержка SATA/PATA контроллеров NVidia 3.7 (22 Ноября 2004) + Исправлена ошибка запуска с защищённого от записи носителя + Исправлена ошибка определения контроллеров HPT + Вернул Makebad/Makerandombad + Добавлено несколько проверок + Исправлена процедура SCAN: теперь таймауты корректно заносятся в лог + Исправлен модуль PCI. Программа иногда падала при наличии некоторых контроллеров в системе 3.6 (16 Ноября 2004) + Усовершенствована процедура сканирования шины PCI + Исправлено "залипание" регистров + ERASE: исправлена мелкая ошибка + SCAN: в конце теста в лог записывается статистика блоков + Оптимизации в процедурах + Косметические улучшения, ускорение вывода информации на экран 3.5.2 (4 Ноября 2004) + SWITCHMBR: Команда делает MBR неактивным заменяя сигнатуру 55AA на 0000 и наоборот + Исправлена процедура EraseWaits + Исправлена процедура ожидания готовности для более корректной работы с кривыми платами Promise + Добавлена процедура CLRMBR. Делает следующее: 1. Сохраняет MBR (LBA 0) в файл LBA0.MBR 2. Сохраняет MBR (LBA 0) в LBA 1 3. Стирает MBR (LBA 0) 3.4 (1 Ноября 2004) + В 10 раз повышена разрядность таймера для процедур Read и Scan. Скорость верификации современных накопителей повысится на несколько процентов. + Добавлен ключ /RO, MHDD не будет пытаться сохранять конфигурационные и временные файлы. + Процедуры TOF и READ: изменён алгоритм расчёта плохих секторов. Как выяснилось, не все накопители следуют стандарту. + Поправлено определение некоторых контроллеров VIA. + Дополнена документация и FAQ. 3.3 (MHDD32) (27 Октября 2004) + Добавлена поддержка SATA контроллеров Intel ICH5/ICH5R, ICH6/ICH6R/ICH6M. Работа ведётся в Native Mode, нет надобности переводить контроллер в режим совместимости + Дробавлена поддержка SATA/ATA133 контроллеров VIA VT6420/6410/RAID - Отключена поддержка SLAVE-устройств + В скриншот добавлены HTML-теги PRE и /PRE для нормального отображения его на форумах типа phpbb + Поправлена процедура TOF + Если накопитель был обрезан HPA с MaxHPA= 0, MHDD отказывалась работать с таким накопителем. Теперь будет работать корректно, но будьте осторожны ;-). + Добавлен ключ командной строки /ENABLEPRIMARY, разрешающий работу с Primary каналом. + Несколько исправлений в процедурах работы со SMART. 3.2 (MHDD32) (19 Октября 2004) + Добавлена сигнализация окончания процедур erase, ff, tof. + Исправлена очень серьёзная ошибка определения номера сбойного сектора в LBA48. 3.1 (MHDD32) (18 Октября 2004) + Переезд на 32-битный компилятор FreePascal + Переписана поддержка PCI устройств, добавлено символьное определение дополнительных IDE/RAID/SATA контроллеров - Убрана поддержка CHS + Добавлена поддержка LBA48 + Seektest/AAM : теперь позиционирование происходит по random LBA + Теперь процедура создания образов работает с файлами >2Gb, но только в том случае, если удастся запустить программу под Win9x. Однако, FAT32 также имеет ограничение на размер файла, поэтому нужно пускать её под ОС, где есть NTFS :-) + Клавиша F8:SMART ATT + Поправлен подсчёт оставшегося до конца теста времени + При чтении аттрибутов (SMART ATT/F8), если смарт был выключен, то будет включен и выключен автоматически + Модифицирована процедура erase (теперь считает кол-во записанных секторов, в режиме lba48 пишет сразу блоками по 10000 секторов). + Теперь программу можно запускать с защищённого от записи носителя. + Теперь программа относительно защищена от дурака. Теперь она проверяет, прочитал ли пользователь документацию. 3.0 (Сентябрь 2004) + Переписан модуль конфигурации. Теперь работа с флоппи-диска значительно ускорится. + Исправлена процедура стирания, теперь записываются нули + Найдена и исправлена очень серьёзная ошибка в процедуре определения адреса сбойного сектора + Добавлена информация о времени доступа к блокам при скане + Обновлена документация. + Исправлена ошибка, из-за которой MHDD вываливалась на первой секунде скана (деление на 0) + Теперь корректно запускается под Windows + Исправлена функция идентификации накопителей с битой служебкой. + Добавлены новые смарт-атрибуты + Добавлен лог работы процедуры TOF, а также возможность вычитывания BAD-секторов + Добавлен счётчик EraseWaits. Выводится в лог и на экран по окончанию скана + Добавил вызов процедуры сброса кеша на диск при добавлении записи в лог для предотвращения потерь информации при выходе по CRTL+BREAK. + Восстановлена хронология появления версий MHDD в данном документе. + Исправлена ошибка в скане, когда ( конечный сектор - начальный сектор ) нацело делится на 255 (происходил вылет по ошибке на последнем блоке). - Убрана эмуляция сопроцессора. + Исправлена процедура Tof. Теперь корректно сообщает номер сектора с ошибкой. + Добавлен ключ в MHDD.CFG - отключение Autodetect. + Исправлена работа с альтернативным портом платы PC3000 - сброс теперь работает корректно. + Программа по умолчанию не работает с портом 0x1F0 (Primary). Чтобы включить его, редактируйте файл MHDD.CFG. + Добавлена "читалка" поверхности (read). + Добавлено быстрое стирание накопителя (fasterase). + Помощь вызывается по F1 + Изменён вид меню - Убраны ненужные никому "смотрелки" дефект-листов и прочий кал + Если MHDD находится в режиме ожидания более 5-10 секунд, включается алгоритм определения подключения накопителя. При выходе накопителя в готовность MHDD автоматически даст команду ID (идентификация). + Клавиша (команда screenshot) - создаёт файл scrshot.log со скриншотом экрана + Как всегда, исправлено куча глюков, повышена стабильность и экологическая ситуация в стране. [ Перерыв 1,5 года ] 2.9 (Май 2003) ! Переработана работа с таймером. Теперь MHDD работает под любую версию Windows (с соответствующими "примочками", которые разблокирут порты). + Во время сканирования теперь можно клавишами курсора осуществлять "навигацию" по диску. + Добавлено немного online help'а. 2.8.4 (Февраль 2003) + Команда PCISCAN. Если у Вас установлен PCI контроллер, не известный MHDD - выполните процедуру PCISCAN и отошлите мне лог её работы. И я включу поддержку Вашего контроллера в следующих версиях. + Переделаны процедуры чтения/записи из/в порты при передачах данных. Теперь такие процедуры как FF, TOF, ERASE должны работать быстрее в 2-3 раза. Сообщайте об ошибках. !!! Исправлена ошибка, "благодаря" которой команда dispwd не работала. Приношу свои извинения. Также, в версиях до 2.84, если длина пароля была < 32 символов ;), то пароль дополнялся пробелами. Теперь такого не происходит. + Переработана документация. 2.8.3 (Декабрь 2002) + Гарантированно поддерживаемые ATA-контроллеры: HPT366, HPT370, CMD649. + Поддержка Unlock и DisPwd для MASTER паролей. 2.8.2 (Декабрь 2002) + В команде fujlst теперь есть считывалка адаптивов из Fujitsu MPG. + Добавлена возможность изменять задержку, после которой срабатывает процедура Erase Waits. Запустите хотя бы один раз процедуру сканирования в новой версии, она создаст в CFG\MHDD.CFG строку #SCAN_ERASEWAITSDELAY=250. Число 250 меняется от 10 до 10000. Если установлено неверное значение, оно сбрасывается в 250. ! Исправлена ошибка "runtime error 215..." при запуске процедуры CX. ! Теперь в MHDD можно использовать до 19 накопителей [1..19], накопители с номерами 6-19 - подключаемые через PCI контроллеры. ! Переработана работа с PCI платами, пробуйте, присылайте замечания. 2.8.1 (Ноябрь 2002) ! исправлен маленький баг, вкравшийся со времен реализации ремапов. При сканировании, если скан натыкается на бэд-блок, он начинает "размусоливать" его посекторно, что нужно только при ремапе и существенно замедляет процесс сканирования на винчестерах с BAD'ами. Теперь этот баг исправлен. + Введена возможность просмотреть атрибуты SMART. Смотрите помощь к команде SMART (просто набрать "smart"). Команда - "smart att". + Введена возможность просмотреть SMART ErrorLogs (журналы ошибок). Смотрите помощь к команде SMART (просто набрать "smart"). Команда - "smart erlog". ! Для файлов конфигурации теперь создается папка "CFG", а для журналов - "LOG". + Введены клавиши F3 (или ALT+R) в командной строке - Сброс диска. Также можно вызвать командой "R". ! пофиксено 2 бага с часиками. Теперь они не превращаются в звездочки раз в минуту. И правильно вычисляют время в случае EndLBA <> MaxLBA :-). + Добавлена возможность создавать пакетные файлы для выполнения. Подробнее читайте в MH_BATCH.TXT + Обновлен FAQ. + В комплекте теперь поставляется программа PORTS - резидентный наблюдатель за состоянием портов. Ports_sm - Secondary master, ports_pm - Primary Master. 2.8 (Октябрь 2002) + введена оценка времени сканирования. + исправлено несколько багов, внесенных в версию 2.7.9 (зависание при детекте, неправильное определение UDMA контроллеров), + введена клавиша "R" при скане. Она посылает накопителю сигнал сброса прямо в любое время и в любом месте при сканировании. + выход из сканирования по улучшен, выход теперь происходит моментально независимо от того, в каком состоянии находится накопитель. + добавлена опция ERASE в процедуру сканирования. Это нечто похожее на Remap, но намного интереснее. См. описание процедуры scan. + немного расширено ведение LOG файла. 2.8b (2.7.9b) (Октябрь 2002) ! исправил баг с ABORT'ами при сканировании в CHS. + введена поддержка PCI ATA контроллеров. Thanks to Mishail Mavritsin за модуль для сканирования PCI шины. + введена возможность чтения дефектлистов HDD IBM, FUJITSU. + теперь по умолчанию сканирование запустится в LBA режиме, если это возможно на данном накопителе. + ускорено :) определение устройств, оптимизирована и ускорена процедура сброса HDD. - вычистил ВСЕ остатки от COPY. Теперь в MHDD нету копировщика. Да и зачем он нужен??? + переработал код. Удалено 20% ненужного :) исходного кода. + очень много изменений, прошу наблюдать за работой программы. 2.7.4.3 (Июль 2002) - отключены процедуры убивания HDD FUJITSU. + модифицирована процедура ERASE (stable). + модифицирована процедура FDISK (stable). + добавлена процедура WAIT (stable) (см. описание). + процедуры FF, TOF, ERASE и AERASE теперь Stable. 2.7.4 (Июль 2002) + добавлены процедуры создания/копирования образов диска. + включено переработанное копирование. + переработаны процедуры стирания дисков + добавлено уничтожение дисков фирмы Fujitsu. + работа с HPA теперь нормально работает на дисках IBM. Раньше она не работала, но из-за ошибки не в MHDD, а в firmware IBM HDD. + добавил ведение лога при сканировании для построения графика верификации. ! нашел ошибку, которую внес еще 2 года назад :-) теперь MHDD должна работать стабильнее. 2.7.0b (Июнь 2002) + Переписано много процедур, набор команд изменен. + Добавлен Remap - скрытие дефектных секторов. + Работа с HPA избавлена от глюков. В частности, теперь нормально восстанавливается размер диска командой NHPA. ! Добавлено много всего, что я пока боюсь новинки декларировать :). Это - бета версия, выпущенная для того, чтобы народ "погонял" документированные в этой доке команды. 2.6.4c. (Март 2002) + Переделал переключение портов, то есть, теперь нормально детектятся все винты, даже подключенные SLAVE'ом :) + Ускорил процедуру идентификации винтов. + "Copy" готова. (только в версии "с", в "f" copy отключена). + Написал "fdisk" - быстрое разбиение. Смотрите соотв. описание. + Пропатчил MS format.com - убрал процедуру верификации поверхности, теперь форматирование любого винта займет не более 10-15 секунд :) 2.6.2 (Ноябрь 2001) + SeekTest для квантумов CX и LCT :-). см. команда "cx". + "Copy" почти готова. 2.6.1 (Ноябрь 2001) + Реализовал нормально работу с password (по настойчивым требованиям) :) см. команды "pwd", "unlock", "dispwd". 2.5.2 (Октябрь 2001) 2.5 (Сентябрь 2001) 2.1 - 2.5 (Сентябрь 2001) 1.2 (Март 2001) (цитата с maysoft.by.ru): Немного подготовил к использованию. Работает с sec. IDE, master. В принципе, не проблема сделать и для pri, master, slave... Это - версия типа 0.-1 :-))) MH - мой проект. Программа для диагностики / кое-чего другого. Пока только что-то вроде беты... Сейчас просто нет времени :-( Вобщем, лучше ничего кроме диагностики не запускать :-) ... Немного о командах: vrf - проверка диска командой верификации vrfs - проверка диска командой чтения из каждого сектора fuck - уничтожение первых 200 секторов диска (можно задать pattern) pwd - set password 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' id - вывести инфо о диске hpa - обрезает диск до 920 мб :-))))) - надо было как-то обрезать, щас лень доделывать. Прога спросит, делать ли hard hpa или soft... rx - выгрести из порта на экран, если поднят drq fmt50h - типа формат, но пока не работает корректно. НАПИШИТЕ МНЕ, кто с этим разбирался! Как это делать правильно? (ata-5 доку читал - немного не въехал) rhpa - команда чтения hpa ;-) - она ничего не выводит на экран, но рассчитана ня тех, кто знает, как правильно записывать данные о hpa ;-) help - help hlp - help cls - cls unlock - разблокировка с пароля 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' dispwd - вывод накопителя из режима пароля 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'. (конец цитаты). 1.1 (Сентябрь 2000) Первая версия MH!